home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / bin / debconf-escape < prev    next >
Text File  |  2009-10-02  |  647b  |  48 lines

  1. #!/usr/bin/perl -w
  2. # This file was preprocessed, do not edit!
  3.  
  4.  
  5. use strict;
  6. use Getopt::Long;
  7.  
  8. use vars qw($escape $unescape);
  9.  
  10. sub usage {
  11.     print STDERR <<EOF;
  12. Usage: debconf-unescape -e|-u < input-text
  13.   -e, --escape      escape text
  14.   -u, --unescape    unescape text
  15.  
  16. Exactly one of -e or -u must be used.
  17. EOF
  18.     exit(1);
  19. }
  20.  
  21. $escape=0;
  22. $unescape=0;
  23.  
  24. GetOptions(
  25.     "escape|e" => \$escape,
  26.     "unescape|u" => \$unescape,
  27. ) || usage();
  28.  
  29. if ($escape == $unescape) {
  30.     usage();
  31. }
  32.  
  33. if ($escape) {
  34.     while (<>) {
  35.         s/\\/\\\\/g;
  36.         s/\n/\\n/g;
  37.         print;
  38.     }
  39. } else {
  40.     while (<>) {
  41.         for (split /(\\.)/) {
  42.             s/\\(.)/$1 eq "n" ? "\n" : $1/eg;
  43.             print;
  44.         }
  45.     }
  46. }
  47.  
  48.